package lambda;

import java.util.ArrayList;
import java.util.List;
import java.util.function.Consumer;

/**
 * JDK8之后,集合Collection上定义了方法forEach,可以使用lambda表达式对集合进行遍历
 */
public class LambdaDemo2 {
    public static void main(String[] args) {
        List<String> list = new ArrayList<>();
        list.add("王克晶");
        list.add("传奇");
        list.add("伟超老师");
        System.out.println(list);
        //新循环遍历
        for(String e : list){
            System.out.println(e);
        }

//        list.forEach((e)->System.out.println(e));

        //如果lambda表达式参数列表只有一个参数,那么参数列表的"()"可以忽略不写
        list.forEach(e->System.out.println(e));

        /*
            方法引用,算是lambda表达式的另一种简写
            前提:
            当lambda表达式的参数和其中调用方法的参数一致时,可以简写为方法引用
            例如:
            e->System.out.println(e)
            ^                     ^
                      一致
            可简写为:
            System.out::println
         */
        list.forEach(System.out::println);
    }
}






